package com.xingfudazi.app.domain;

import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.xingfudazi.common.core.domain.AppCollectable;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.experimental.Accessors;

import java.math.BigDecimal;
import java.time.LocalDateTime;

/**
 * 活动
 * @author YuJiaMing
 * date 2024年09月19日 23:57
 */
@Data
@Accessors(chain = true)
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class AppAct implements AppCollectable {

    @TableId(type = IdType.ASSIGN_ID)
    private Long actId;

    /**
     * 活动名字
     */
    private String actName;

    /**
     * 分类
     */
    private String category;


    /**
     * 封面
     */
    private String cover;


    /**
     * 简介,
     */
    private String des;

    /**
     * 内容
     */
    private String content;


    /**
     * 注意事项
     */
    private String note;


    /**
     * 发起人、举办单位
     */
    private String organizer;

    /**
     *  活动开始时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime actTime;

    /**
     * 结束时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime endTime;

    /**
     * 活动地点
     */
    private String actLocation;


    /**
     * 活动经纬度
     */
    private String actLngLat;


    /**
     * 已经报名的数量
     */
    private Integer signNumber;



    /**
     * 数量限制
     */
    private Integer numberLimit;

    /**
     * 删除标志
     */
    @TableField(fill = FieldFill.INSERT, value = "del_flag")
    private String delFlag;


    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @TableField(fill = FieldFill.INSERT, value = "create_time")
    private LocalDateTime createTime;


    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @TableField(fill = FieldFill.UPDATE, value = "update_time")
    private LocalDateTime updateTime;


    /**
     * 售价
     */
    private BigDecimal price;

    public static void main(String[] args) {
        System.out.println(System.currentTimeMillis());
    }
}
